/*
 * Copyright (c) 2016 www.smarthome.com All rights reserved.
 * 本软件源代码版权归----所有,未经许可不得任意复制与传播.
 */
package com.smarthome.base.service;

import java.util.List;
import java.util.Map;

import com.smarthome.base.service.base.BaseService;
import com.smarthome.domain.bean.ShOrders;
import com.smarthome.domain.vo.boss.DataGrid;
import com.smarthome.domain.vo.boss.PageHelper;

/**
 * ShOrdersService接口
 * 
 * @author Kongxiangyu
 * @since 2016-03-20
 */
public interface ShOrdersService extends BaseService<ShOrders, Long> {

	/**
	 * 翻页
	 * 
	 * @param shOrders
	 * @param page
	 * @author shazhichao
	 * @return
	 */
	DataGrid queryShOrdersPage(ShOrders shOrders, PageHelper page);

	/**
	 * 更新
	 * 
	 * @param shOrders
	 * @author shazhichao
	 * @return
	 */
	int batchUpdate(ShOrders shOrders);

	/**
	 * 
	 * @Title: getDetailById
	 * @Description: 通过id获取详情
	 * @param id
	 * @return ShOrders
	 * @throws
	 */
	ShOrders getDetailById(Long id);

	/**
	 * 
	 * @Title: getSendCourierDetailList
	 * @Description: 获取快递代发详情列表
	 * @param shOrders
	 * @return List<ShOrders>
	 * @throws
	 * @author cyj
	 */
	List<ShOrders> getSendCourierDetailList(ShOrders shOrders);

	/**
	 * 
	 * @Title: getSendCourierCount
	 * @Description: 获取快递代发数量
	 * @param shOrders
	 * @return Integer
	 * @throws
	 */
	Integer getSendCourierCount(ShOrders shOrders);

	/**
	 * 得到 订单-list
	 * 
	 * @param shOrders
	 * @return
	 */
	List<ShOrders> getShOrdersList(ShOrders shOrders);

	/**
	 * 获取订单统计的数量和费用合计
	 * 
	 * @param shOrders
	 * @return
	 */
	Map<String, Object> getCountAll(ShOrders shOrders);
	
	/**
	 * 获取图表统计的数据
	 * 
	 * @return
	 */
	Map<String, Object> getPicCount(ShOrders shOrders);
}